1. What is this?

A high-level, very casual, and often self-deprecating look at trends in catches of Tyee salmon in Campbell River’s legendary Tyee Pool. All data exploration is being completed for fun and to learn some new tools (namely R Markdown and plotly).

There are far more technical ways of examining this data, but they aren’t as much fun - and are frankly hard. This analysis is living and will evolve over time. All results and interpretation are purely speculative and should be considered nothing more than ramblings of a fish nerd.

Normally this is where I would put pictures of all the beautiful Tyee I have captured, but that hasn’t happened yet. So far, these are the best things I have managed to get in my boat.

1.1 The data

I have compiled the following datasets to use in this analysis. Whether they are all incorporated is yet to be seen.

  1. Annual catch records from the Tyee Club.
  2. Discharge data collected on the Campbell River by the Water Survey of Canada.
  3. Annual Chinook Salmon escapement data available in the DFO NuSEDS database.
  4. Annual catch statistics from the North Pacific Anadromous Fish Commission.
  5. Area based commercial catch statistics from DFO are available from 2001 to 2016
  6. Straight of Georgia herring spawn and catch data.
  7. Southeast Alaska commercial catch data from North Pacific Anadromous Fish Commission.
  8. Hatchery release statistics from North Pacific Anadromous Fish Commission.
  9. Known ocean ranges of Pacific Salmon and Steelhead stocks

This is certainly an interesting dataset, especially given it is the centenary of the Tyee Club, but it has its limitations. For example, there is no accessible information on effort (# boats per day), biological data (e.g. size, girth and age of tyees) or numbers of non-tyee salmon captured in the pool.

2. Let’s look at the Tyee catch data!

There are lots of ways to look at this data. I am most curious about three things:

  1. How total catches vary among years and if they fluctuate relative to escapement.

  2. When are Tyees most frequently captured?

  3. Has fish size changed across seasons? Does fish size vary within seasons?

2.1 How catches vary among years.

Figure 1: Trends in Tyee Salmon captures and Campbell River Chinook Salmon escapement.

A quick look at Tyee catches (blue vertical bars) in Figure 1 shows:

  1. There is a fairly clear 4-year cycle of relatively higher catches (highlighted with shading). Which is interesting, and raises lots of questions…
  2. There has been a consistent decline in the number of Tyee salmon captured per year.
  3. There was a major crash or failure in 2014.

If we look at Escapement data (blue line) shown in Figure 1 , we can see:

  1. There has been a general declining trend in escapement (consistent with regional trends),
  2. Periods of increased escapement correspond with periods of increased Tyee catches, but not always (e.g. 2005, 2017 and 2020). Given the lack of information on effort (e.g. # of boats fishing per day) we cannot tease apart whether the lack of catches in some years is due to reduction in pressure.
  3. It is also possible that years with high escapement and low Tyee numbers were due to an increased proportion of smaller fish returning to the Campbell. Without annual information on age structure I cannot tease this apart.

Now, lets see when fish are most frequently captured throughout the season, and if there has been a change over time.

2.2 When fish are most frequently captured.

The Tyee season runs from July 15 to September 15. I need to pick my battles with my wife and boss. Let’s see which days I should be fighting for!?

Figure 2: Total fish captured by date and decade

This plot will become a lot more interesting once I can get my hands on some historical data. But for now, we can see:

  • People either do not fish, or do not catch fish before late July/early August. Given the way catches increase through August I am thinking it is the latter.
  • Peak catches occur in mid to late August.

OK, well now we know not to bother fishing until early August, that I should book the off the last 3 weeks of August and that odds are that 2023 is not going to set a new record for most Tyee’s captured. But who knows.

2.3 Does fish size vary within or between seasons?

Figure 3: Mean annual weight of Tyee Salmon captured since 2002.

So overall mean fish size is relatively consistent across years. That’s good news, but maybe there are better ways to look at this data. Bar plots can be deceptive.

Figure 3: Mean annual weight of Tyee Salmon captured since 2002.

Well that is a bit better. The overall mean size of Tyee has stayed relatively stable across years, which makes sense given there is a minimum size limit for Tyee - but there also appears to fewer bigger fish being captured each year.

Figure 4: Weight of Tyee salmon caught per day since 2002.

What a mess. Pretty hard to identify any relationships from that figure.

2.4 Daily catches per year.

To round this out, let’s just have a look at the total number of fish caught per day over the past 20 years.

Figure 2: Total fish captured by date and decade

Without additional data there is not much else to look at. So let’s change gears and start poking around at what may be contributing to observed patterns in catches and size.

3. Chinook Salmon

3.1 What we* know about Campbell River Chinook?

(* more like what have others learned about Chinook in the Campbell, I don’t know much).

There has been a lot of information collected on Campbell River Chinook Salmon, including from Tyee Salmon captured in the Tyee Pool, however, most of this data is not readily available online. Data that is available (and that I have found) is summarized below.

3.1.0 Quinsam vs. Campbell

  • The vast majority of Chinook Salmon returning to the Campbell River system are from the Quinsam River. Based on available escapement data for both systems, a mean of 12.5% Chinook returning to the system are from the Campbell River (varies from 6% to 25% between 1991 and 2019).

Figure 5: Chinook Salmon escpaement in the Campbell and Quinsam rivers from 1991 to 2021.

3.1.1 Spawn Timing

  • Chinook spawning occurs from late September through early November and peaks in mid-October and that spawners reside in the river for ~12 days.

3.1.2 Age Class Structure

  • A roughly equal proportion of spawners return to the Campbell River as age-4 and age-5 fish (see Table 1) Sturham et al. 1999.

  • However, Ewart & Anderson,2013 report that Age-5 fish were dominant in 2012 (61%), with Age-4’s accounting for only 37% of the run, and age-3’s representing only 2%.

3.1.3 Size-at-Age

  • I have not found any measures of individual fish. But binned data from Sturham et al. 1999 (see Table 1) shows that Age-3 fish were between 500 mm and 699 mm (mean = 595 mm), Age-4 fish generally range in size from 550-949 mm (mean ~ 780 mm) and age-5 fish range from 700-949 mm (mean ~ 840 mm). Age-6 fish were identified, but accounted for less than 1% of all fish in the Campbell (n = 1 fish, 930 mm).
  • Fish in the Quinsam River are comparable in size to those in the Campbell, though hatchery fish generally return at a smaller size than their wild counterparts in the Campbell and Quinsam. Sturham et al. (1999) data suggest Age-4 and Age-5 wild fish may exceed 900 mm, while only Age-5 hatchery fish are likely to exceed 900 mm.

3.1.4 Fecundity

  • Ewart & Anderson, 2013 report that female Chinook in the Campbell River in 2012 carried roughly ~5,700, a decrease from the roughly 6,000 eggs typically carried.

3.1.5 Juvenile Life History

  • Juvenile Chinook Salmon in the Campbell River have been studied intensively since 2015 (e.g. Thornton et al. 2022. These data suggests fry emerge in February-March and that nearly all Campbell River Chinook out migrate as Age-0+ juveniles from March through July. Smaller recently emerged Age-0+ fry are dominant and typically captured from March through early May (37 to 52 m). Larger Age-0+ smolts are less common and move out from May through July (64 to 88 mm).

3.1.6 Estimated Juvenile Production

  • Estimates of juvenile Chinook production based on numbers of observed spawners have generally been less than numbers trapped throughout the out-migration period (Thornton et al. 2022, which may be due to juvenile survival rates that are relatively higher than typical (e.g. >10%), inaccurate estimates of fecundity.

3.1.7 Estimates of Marine Survival

  • Marine survival of unfed fry released from the Quinsam hatchery range from 0.2% to 0.4% (yes, that is less than 1%) (Ewart & Anderson 2013).

3.1.8 Hatchery Influence and Population Status

  • Ewart & Anderson 2013 report that 56% of the otoliths examined from 2012 spawners showed no signs of hatchery marking and are assumed wild. The remaining 44% are presumed to have originated from instream incubators (31%), seapen released smolts (4%) and Quinsam River released smolts (9%).
  • Assuming data presented by Sturham et al. 1999 is representative of the overall Quinsam population, we can assume hatchery origin fish make up 62.295082% of Age-3 fish, 66.3716814% of Age-4 fish, 64.6017699 of Age-5 fish and 50% of Age-6 fish.

3.1.9 Ocean Range

3.1.9 Exploitation Rates

  • Approximately 20% of fish released by the Quinsam hatchery are intercepted in Southeast Alaska commercial net (4.99%) and troll fisheries (11.95%), as well as an additional 1.84% that are intercepted in sport fisheries. Interestingly, a court ruling in May 2023 almost shut down the SE Alaska troll fishery this year. Unfortunately for those aspiring to join the Tyee Club (and Orcas), that decision was reversed in late June, 2023 and the fishery occurred from July 1 to 12, 2023, not sure whether it will resume again at a later date.
  • I have not found any data indicating exploitation rates of Campbell/Quinsam Chinook within BC commercial and sport fisheries, however, I am assuming there is interception in North Coast Vancouver Island fisheries given their ocean range and presumed migration routes.
Table 1. Size at age of Chinook Salmon captured in Campbell River watershed from Sturham et al. 1999
Waterbody Age n % of Total Size Range
(mm)
Mean Lenght
(mm)
Campbell River 3 6 7.9 500 - 699 595.0
Campbell River 4 34 44.7 550 - 949 779.5
Campbell River 5 35 46.1 700 - 949 842.5
Campbell River 6 1 1.3 900 - 949 930.0
Quinsam Hatchery 3 76 20.2 400 - 749 619.5
Quinsam Hatchery 4 225 59.8 550 - 899 743.5
Quinsam Hatchery 5 73 19.4 700 - 949 834.0
Quinsam Hatchery 6 2 0.5 750 - 849 784.0
Quinsam River 3 46 22.8 500 - 849 663.0
Quinsam River 4 114 56.4 550 - 949 733.5
Quinsam River 5 40 19.8 700 - 949 818.0
Quinsam River 6 2 1.0 800 - 849 838.0

3.2 What we know about Chinook salmon in general.

3.2.1 They are decreasing in size and age at maturity

  • Ohlberger et al. 2018 have shown that there is a reduction in the proportion of older age classes throughout most regions of the East Pacific and that length-at-age of older fish has decreased while length-at-age of smaller fish has increased.
  • Malick et al. 2023 compiled 3 decades worth of broodstock data from 43 hatcheries to examine trends in fecundity. They found significant changes in both fecundity and length, with the greatest drop in fecundity occurring over the past decade. Interestingly, they also estimate that a 1 mm reduction in length results in ~7.8 few eggs per female.
  • Oke et al. 2020 state that relative to salmon maturing before 1990, adult Chinook salmon now produce 16% fewer eggs, transport 28% less nutrients and have lost 21% of their fisheries value.

3.2.2 Survival rates have collapsed and returns are decreasing

  • Welch et al. 2018 used coded-wire tag data to look at large scale patterns of Chinook salmon survival. This data demonstrates that survival collapsed over the past half century by a factor of ~3 and is currently ~1% in many regions (consistent with estimates available for the Campbell). Survival in relatively pristine and undeveloped regions (e.g. Northern BC and Alaska) was comparable to areas with extensive water management and land development that were previously considered to have poorest survival (e.g. Columbia River). The authors suggest the widespread trends in survival may be evidence that marine conditions are more influential than local factors (e.g. freshwater habitat).

  • Similar trends have been observed in other species. For example, Price et al. 2021 found a 69% reduction in wild Sockeye salmon returns (though overall returns are comparable to historic levels due to intensive enhancement); that population diversity has decreased by ~70%, and; that life history diversity has shifted with populations now migrating from freshwater earlier and remaining at sea for longer.

3.2.3 Enhancement levels have never been higher

  • Ruggerone & Irvine 2018 show that intensive enhancement has resulted in the greatest abundance of salmon in the ocean than ever before (specifically pink, sockeye and chum) and that marine carrying capacity may have been reached within recent decades.
  • Nelson et al. 2019 present evidence that hatchery practices have altered size and time that juveniles are released and have reduced diversity of life history traits (e.g. size, age and timing of smoltification). The authors argue that current enhancement practices may release fish at a time and size that is preferred by predators (e.g. all fish being released at same time and size and are easy pickings for large aggregations of predators).

3.2.4 I am not the only person who doesn’t understand what is going on

  • Beamish 2022 emphasizes that due to the large number of juvenile salmon in the ocean and overall poor survival, any small change in survival can results in major changes in adult abundance. Unfortunately, we don’t understand what is causing those small changes in survival in the marine environment and need a better understanding of biologically based mechanisms linking climate change to salmon abundance.

4. What could be affecting returns and catches?

Off the top of my head, there are four things that are most likely to be affecting catches of Tyee salmon (in reality, there are many, many more. But for now let’s start with this).

4.1. Juvenile recruitment

Generally, juvenile recruitment refers to the process of small fish transitioning to an older life stage (e.g., an egg hatching into an alevin, a fry becoming a parr or smolt, a smolt maturing into an adult…). According to Thornton et al. 2022 Campbell River Chinook fry emerge in February-March and out migrate as Age-0+ juveniles from March through July. Smaller recently emerged Age-0+ fry are dominant and typically captured from March through early May (37 to 52 m) While larger Age-0+ smolts are less common and move out from May through July (64 to 88 mm). Given that Chinook move to the estuary as fry, lets figure out how many fish should be produced each year. To do this, we need to know:

  • The number of females that return to spawn. Sturham et al. 1999) report that ~60% of Chinook returning to the Campbell River are female. So multiplying the annual escapement values by 0.6 will give us total number females per year. + The number of eggs that each female deposits, which according to (Ewart & Anderson, 2013) has been close to 6,000 eggs-per-female, but now may be closer to 5,700 eggs-per-female.
  • The number of females that spawn successfully. I have no data, so lets assume 100% of females that make it to the river will spawn.
  • The number of eggs that hatch and the number of alevin that survive and emerge from gravel as fry. For ease, we will assume that 10% of eggs will survive the egg-to-fry stage.

So under normal conditions we could expect to see annual fry production ranging from 42,066 to 616,967, with a mean of 271,962 fry.

But abnormal is the new normal. Extremely high flows through the incubation period can greatly reduce survival by scouring away gravel and eggs. Thornton et al. 2022 observed this in 2016 when very Chinook (or other salmon) fry out migrated following a large spill event in November 2016 (and to a lesser extent in 2014).

If we assume that flows over 375 cms reduce fry out migration by 90% we see that fry production in years with high flow events is greatly reduced, which will have significant effects on future returns (Note that I have no idea what flows are required to scour gravels in the Campbell or what associated mortality would be, this is purely speculative).

Figure 6: Estimated annual Chinook Salmon fry production in the Campbell River, peak flows during incubation period and estimated impacts of high flow events throughout the incubation period.

Well, I am already going out on a limb here. Key takeaway here is that high flow events during sensitive spawning and incubation periods are likely to have a detrimental effect on juvenile survival, which in turn will contribute to a reduction in the number of Tyee that I fail to catch.

4.2. Marine survival and productivity

Ewart & Anderson, 2013 estimate the marine survival in the Campbell River system is approximately 0.003. This stuff is all way more complicated than I want to get into, so for now I will pretend that marine survival and productivity are stable (*spoiler, they are not).

4.3. Fishing effort and catchability

For now, I am going to assume effort (# of boats fishing per tide/day) is constant and that catchability (percent of Tyees present that are captured) is stable. In reality, I would guess that effort has likely decreased over time and catchability has likely increased as peoples knowledge, skill and fishing technology have improved over time (not everyone though, I still suck). Either way, without some hard data it is hard to do much with this.

4.4. Environmental Conditions

Tyee fishermen may be among the toughest of tough (cough, cough), but even so, windy, wet seasons are likely to result in lower effort and fewer fish than relatively drier, calmer seasons. It is also possible that fish behaviour will change in response to river conditions. Certainly there was a lot of speculation that high flows during the 2022 Tyee season contributed to record low catches.

For now, I have little interest in combing through historic weather data. But, I already have flow data. So let’s see how river flows have varied between seasons.

colnames(flow.catch.recent)
##  [1] "ID"                   "PARAM"                "Date"                
##  [4] "Year"                 "Month"                "Weeknum"             
##  [7] "Value"                "Season"               "q.peak.season.yr"    
## [10] "test.data"            "q.daily"              "q.yr.mean"           
## [13] "q.yr.se"              "q.m"                  "q.m.se"              
## [16] "q.yrm"                "q.yrm.se"             "q.yrwk"              
## [19] "q.yrwk.max"           "q.yrwk.se"            "q.wk"                
## [22] "q.wk.se"              "q.5yr.roll.mean"      "q.5y.roll.se"        
## [25] "catch_binary"         "catch_yr.total"       "catch_yr.mean"       
## [28] "catch_yrs.mean.total" "catch_yrs.mean.catch" "tyee_cycle4"         
## [31] "tyee_cycle5"          "catch_yrwk.total"     "catch_wk.total"      
## [34] "catch_wk.mean"        "catch_wks.mean"       "catch_scaled"        
## [37] "q.daily.scaled"       "q.5yr.rm.scaled"      "q.5y.rse.scaled"     
## [40] "date.std"
flow.catch.dat2 <- flow.catch.recent %>% 
                      group_by(Year, tyee_cycle4) %>%
                      summarize(total.catch = sum(catch_binary),
                                q.yr.mean = mean(q.daily, na.rm = TRUE),
                                q.yr.max  = max(q.daily, na.rm = TRUE),
                                q.yr.min  = min(q.daily, na.rm = TRUE))
## `summarise()` has grouped output by 'Year'. You can override using the
## `.groups` argument.
str(flow.catch.dat2)
## gropd_df [16 × 6] (S3: grouped_df/tbl_df/tbl/data.frame)
##  $ Year       : chr [1:16] "2007" "2008" "2009" "2010" ...
##  $ tyee_cycle4: num [1:16] 2 3 4 1 2 3 4 1 2 3 ...
##  $ total.catch: num [1:16] 21 29 57 55 23 31 47 9 15 13 ...
##  $ q.yr.mean  : num [1:16] 64.1 43.2 32.9 59.1 74.5 ...
##  $ q.yr.max   : num [1:16] 128 89.2 43.4 76.7 85.4 39.1 43.6 38.8 34.1 48.9 ...
##  $ q.yr.min   : num [1:16] 44.8 34.3 29.3 41.7 61.4 31.9 32.4 29 27 28 ...
##  - attr(*, "groups")= tibble [16 × 2] (S3: tbl_df/tbl/data.frame)
##   ..$ Year : chr [1:16] "2007" "2008" "2009" "2010" ...
##   ..$ .rows: list<int> [1:16] 
##   .. ..$ : int 1
##   .. ..$ : int 2
##   .. ..$ : int 3
##   .. ..$ : int 4
##   .. ..$ : int 5
##   .. ..$ : int 6
##   .. ..$ : int 7
##   .. ..$ : int 8
##   .. ..$ : int 9
##   .. ..$ : int 10
##   .. ..$ : int 11
##   .. ..$ : int 12
##   .. ..$ : int 13
##   .. ..$ : int 14
##   .. ..$ : int 15
##   .. ..$ : int 16
##   .. ..@ ptype: int(0) 
##   ..- attr(*, ".drop")= logi TRUE
flow.catch.plt <- ggplot(flow.catch.dat2) +
                      geom_line(aes(x = Year, y = q.yr.min, color = "red")) +
                      geom_col(aes(x = Year, y = total.catch, fill = tyee_cycle4)) 
                      
  
  mean(flow.catch.dat2$q.yr.mean)
## [1] 42.05961
str(flow.catch.recent)
## tibble [1,008 × 40] (S3: tbl_df/tbl/data.frame)
##  $ ID                  : chr [1:1008] "08HD003" "08HD003" "08HD003" "08HD003" ...
##  $ PARAM               : num [1:1008] 1 1 1 1 1 1 1 1 1 1 ...
##  $ Date                : Date[1:1008], format: "2007-07-15" "2007-07-16" ...
##  $ Year                : chr [1:1008] "2007" "2007" "2007" "2007" ...
##  $ Month               : chr [1:1008] "07" "07" "07" "07" ...
##  $ Weeknum             : chr [1:1008] "28" "29" "29" "29" ...
##  $ Value               : num [1:1008] 89.2 88.8 89.4 92.2 99.6 86.9 88 89.8 128 109 ...
##  $ Season              : chr [1:1008] "Summer" "Summer" "Summer" "Summer" ...
##  $ q.peak.season.yr    : num [1:1008] 128 128 128 128 128 128 128 128 128 128 ...
##  $ test.data           : num [1:1008] 1 1 1 1 1 1 1 1 1 1 ...
##  $ q.daily             : num [1:1008] 89.2 88.8 89.4 92.2 99.6 86.9 88 89.8 128 109 ...
##  $ q.yr.mean           : num [1:1008] 73.2 73.2 73.2 73.2 73.2 ...
##  $ q.yr.se             : num [1:1008] 2.72 2.72 2.72 2.72 2.72 ...
##  $ q.m                 : num [1:1008] 76.1 76.1 76.1 76.1 76.1 ...
##  $ q.m.se              : num [1:1008] 0.778 0.778 0.778 0.778 0.778 ...
##  $ q.yrm               : num [1:1008] 93.8 93.8 93.8 93.8 93.8 ...
##  $ q.yrm.se            : num [1:1008] 1.49 1.49 1.49 1.49 1.49 ...
##  $ q.yrwk              : num [1:1008] 88.6 90.7 90.7 90.7 90.7 ...
##  $ q.yrwk.max          : num [1:1008] 89.2 99.6 99.6 99.6 99.6 99.6 99.6 99.6 128 128 ...
##  $ q.yrwk.se           : num [1:1008] 0.171 1.613 1.613 1.613 1.613 ...
##  $ q.wk                : num [1:1008] 82.3 73.9 73.9 73.9 73.9 ...
##  $ q.wk.se             : num [1:1008] 1.85 1.6 1.6 1.6 1.6 ...
##  $ q.5yr.roll.mean     : num [1:1008] 51.7 51.8 51.9 52 52.2 ...
##  $ q.5y.roll.se        : num [1:1008] 1 1 1.01 1.01 1.01 ...
##  $ catch_binary        : num [1:1008] 0 0 0 0 0 0 0 0 0 0 ...
##  $ catch_yr.total      : num [1:1008] 21 21 21 21 21 21 21 21 21 21 ...
##  $ catch_yr.mean       : num [1:1008] 0.228 0.228 0.228 0.228 0.228 ...
##  $ catch_yrs.mean.total: num [1:1008] 33.7 33.7 33.7 33.7 33.7 ...
##  $ catch_yrs.mean.catch: num [1:1008] 0.366 0.366 0.366 0.366 0.366 ...
##  $ tyee_cycle4         : num [1:1008] 2 2 2 2 2 2 2 2 2 2 ...
##  $ tyee_cycle5         : num [1:1008] 1 1 1 1 1 1 1 1 1 1 ...
##  $ catch_yrwk.total    : num [1:1008] 0 0 0 0 0 0 0 0 0 0 ...
##  $ catch_wk.total      : num [1:1008] 0 0 0 0 0 0 0 0 1 1 ...
##  $ catch_wk.mean       : num [1:1008] 0 0 0 0 0 ...
##  $ catch_wks.mean      : num [1:1008] 2.59 2.59 2.59 2.59 2.59 ...
##  $ catch_scaled        : num [1:1008] 0 0 0 0 0 0 0 0 0 0 ...
##  $ q.daily.scaled      : num [1:1008] 4.46 4.44 4.47 4.61 4.98 ...
##  $ q.5yr.rm.scaled     : num [1:1008] 2.58 2.59 2.6 2.6 2.61 ...
##  $ q.5y.rse.scaled     : num [1:1008] 0.05 0.0502 0.0503 0.0504 0.0507 ...
##  $ date.std            : Date[1:1008], format: "2021-07-15" "2021-07-16" ...
# flow.catch.plot <-    ggplot(flow.catch.recent) +
#                          geom_col(aes(x = Year, y = catch_yr.total, fill = tyee_cycle4)) +
#                          geom_line(aes(x = Year, y = q.yrm, linetype = "dashed"), color = "Daily") +
#                          geom_line(aes(x = Year, y = q.5yr.roll.mean, linetype = "twodashed", 
#                                        color = "5-yr Mean Discharge")) +
#                          geom_text(aes(x = as.Date("2021-07-20"), y = 13, 
#                                        label = str_c("Total Catch = ",catch_yr.total), size = 8)) +
#                          labs(x = "", y = "Discharge (cms)") +
#                          # scale_x_continuous(= "5 days", date_labels = "%m-%d", 
#                          #                    minor_breaks = "1 day") +
#                          scale_y_continuous(breaks = seq(0, 130, 10),
#                                             sec.axis = sec_axis(~./7, name = "Number of Fish")) +  #scale secondary access by x25
#                          guides(fill = guide_legend(title = "# Tyee", label = FALSE),
#                                 linetype = "none",
#                                 color = guide_legend(title = "Discharge (cms)", label = TRUE),
#                                 size = "none") +
#                          facet_grid(fct_rev(Year)~.) +
#                          theme_bw() +
#                          theme(legend.position = "bottom")  
  • 7.9% of fish will return as Age-3, 44.7% of fish will return as Age-4 fish, 46.1% will return as Age-5 fish and 1.3% will return as Age-6 fish (Sturham et al. 1999).

  • All fish captured in the Tyee pool are actually from the Campbell system.

We can expand this to estimate the number of Tyee salmon that will return if we make even more assumptions!

  • For fun, let’s assume all fish > 900 mm are Tyee Salmon (I know girth is important too, but I dont have girth data) and using the (Sturham et al. 1999) data as a rough guide I will assume that 10% of Age-4 male adults are >900 mm, 25% of Age-5 fish (males and females) are >900 mm and 75% of Age-6 fish are >900 mm.

5. So, what can we look at?

Off the top of my head there are two ways we can approach this:

1.) How many fish should come back based on past on escapement counts and available biological data.

2.) We can look at what factors influenced how many fish were available for capture in the Tyee pool (i.e. how historic conditions may have contributed to observed captures), and/or;

3.) We can look at what factors influenced how returning fish were captured (i.e. conditions during the fishing season)

5.1 How many fish should come back?

We can VERY CRUDELY estimate the number of salmon that should return to the Campbell River if we make a couple of big assumptions:

  • Fecundity is ~5,700 eggs per female (Ewart & Anderson, 2013)

  • Sex ratios are 60:40 female to male using (Sturham et al. 1999) data for Campbell River.

  • Egg-to-fry survival is approximately 0.1, can’t recall where this number came from but its commonly used as a measure of egg-to-fry survival of wild fish (compared to 0.9 for hatchery reared fish). Give results from Thornton et al. 2022 it is likely that egg-to-fry survival in the Campbell is higher.

  • Marine survival (smolt to adult) is approximately 0.003 (Ewart & Anderson, 2013)

  • 7.9% of fish will return as Age-3, 44.7% of fish will return as Age-4 fish, 46.1% will return as Age-5 fish and 1.3% will return as Age-6 fish (Sturham et al. 1999).

  • All fish captured in the Tyee pool are actually from the Campbell system.

We can expand this to estimate the number of Tyee salmon that will return if we make even more assumptions!

  • For fun, let’s assume all fish > 900 mm are Tyee Salmon (I know girth is important too, but I dont have girth data) and using the (Sturham et al. 1999) data as a rough guide I will assume that 10% of Age-4 male adults are >900 mm, 25% of Age-5 fish (males and females) are >900 mm and 75% of Age-6 fish are >900 mm.

If we run these numbers, each female will generate 1.7 offspring, of which 0.14 will be Age-3, 0.76 will be Age-4, 0.79 will be Age-5 and 0.022 will be Age-6. Furthermore, each female will produce 0.24 Tyee salmon. Let’s take a moment to remember that these assumptions are terrible. Larger fish are more likely to produce larger fish, so in reality some fish will produce a decent number of Tyee and others will produce none. But let’s keep it simple for now and assume every fish is able to make an equal number of Tyees

Based on this, each female should produce 1.7 offspring that return to spawn. Which is less than ideal.

Figure 7: Predicted returns of Campbell River Chinook by age-class relative to measured escapement (does not include Quinsam River fish).

Well that’s interesting. There are periods when my predicted returns closely align with actual escapement (most closely from 2003 to 2007, but my values are comparable from 2003 to 2010). This suggests my estimates may not be WAY off but does not confirm they are correct. Other notes:

  • Also clearly periods when my predictions are off! Most notably from 1998 to 2002, 2011-2012, 2014 and 2019 to 2022.
  • There are number of years where something appears to have happened and fish simply did not return (2005, 2011, 2014).
  • There are also years where something positive appears to have happened and far more fish than expected returned to the river (1999 to 2001, 2020).

5.2 How many tyee should be returning?

Let’s look at little closer at how many Tyee salmon may be returning in a given year.If all Tyee salmon were captured each year, we would be actively selecting against large fish, so we would expect to see a rapid and continuous decline in the total number of Tyees returning each year (which I suppose we are). But, I have had the opportunity to snorkel the Campbell River canyon a number of times and have seen spawning Tyee, and last year there were lots of Tyee captured in the river… though not sure what their fate was. Aynways, all this to say that its unlikely every Tyee is captured in the pool, and the actual number returning to the pool should be at least equal to or higher than the number captured.

Reminder of key assumptions in the plot:

  • 10% of Age-4 fish will return as Tyee.
  • 25% of Age-5 fish will return as Tyee.
  • 75% of Age-6 fish will return as Tyee.

Figure 8: Comparison of catches of Tyee Salmon, predicted returns of Tyee Salmon and annual Chinook Salmon escapement counts.

Well, this figure either shows how poor my estimates are, or that a tremendous number of Tyee are intercepted (e.g. marine survival of Tyee salmon is lower than other fish).

Figure 9: Chinook Salmon escapement from rivers on East and West Coast of Vancouver Island.

Well, that figure sucks. But it shows how variable escapement is between years. On the East Coast of the Island, abundance increased in 43% of plotted streams and decreased in all others. Decreases

Relative to 2013, abundance in all plotted west coast streams was slightly reduced in 2014. There was a major crash in the Burnam River, but this is exaggerated by unusually high returns in 2013, 2015 and 2016.

5.2 How Historic Conditions Influenced Captures

MAYBE RERUN ESCAPEMENT PLOT USING ALL ESCPAEMENT DATA!? FACET BY AREA?

ADD METRIC THAT STANDARDIZES ESCAPEMENT. E.G. total annual returns vs mean annual returns.

5.3 How conditions may affect the number of fish that are captured.

5.3.1 Influence of river flow on catches

Figure 10: Catches of Tyee Salmon since 2016 relative to flow in the Campebll River.

Well, it’s clear that flows in 2022 were higher than past years and higher than mean flows over the past 5-years. But this doesn’t mean that is why fewer fish were captured.

Last year there was a lot of speculation that high flows in the Campbell River may have caused fish to move directly into the river rather than staging in the pool. Let’s look at flow in the Campbell River to see how 2022 flows compared to previous years.

Figure 10: Catches of Tyee Salmon since 2016 relative to flow in the Campebll River.

Well, it’s clear that flows in 2022 were higher than past years and higher than mean flows over the past 5-years. But this doesn’t mean that is why fewer fish were captured. Either way let’s take a closer look at the correlation between flow and capture.

## `geom_smooth()` using method = 'loess' and formula = 'y ~ x'

Figure 11: Relationship between river flow and fish capture

Figure 11 shows a strong negative relationship between discharge and the number of fish that are captured. This is what you would expect, that fish will hold in the pool while flows are low and that they will move into the river when flows are higher and they can safely navigate upstream. However, the fishery occurs during the late summer, when flows are typically low so it’s somewhat of a chicken and egg situation….

OK, well there is a relationship (that could be due to a number of things). Lets have a look at some of the older data.

Figure 12: Catches of Tyee Salmon since 2007 relative to flow in the Campebll River.

Let’s look at commercial catches. Maybe there is a fishery that could be intercepting a large number of Tyees.

can.catch <- comm.catch %>% rename(Catch.Type = 'Catch Type',
                                   Data.Type  = 'Data Type') %>%
                            mutate(Area         = as.factor(Area),
                                   Species      = as.factor(Species),
                                   Year         = as.numeric(Year),
                                   Catch.Type = as.factor(Catch.Type)) %>%
                            filter(Country   ==  "Canada",
                                   Year      >= 1997,
                                   Data.Type == "Number (000's)")

can.catch.cn <- can.catch %>% filter(Species   == "Chinook",
                                     Area      == "Whole country")

      CN.catch.plot <- ggplot(can.catch.cn) +
                              geom_line(aes(x = Year, y = Total.Catch, color = Catch.Type)) +
                       labs(x = "Year", y = "Total Catch (0000's of fish") +
                       theme_bw()
      
      CN.catch.plot

can.catch.cn2 <- can.catch %>% filter(Species   == "Chinook",
                                      Catch.Type == "Sport")
      summary(can.catch.cn2)
##    Country           Prov.State                 Area       Species  
##  Length:12          Length:12          North Coast:12   Chinook:12  
##  Class :character   Class :character   Southeast  : 0               
##  Mode  :character   Mode  :character                                
##                                                                     
##                                                                     
##                                                                     
##        Catch.Type  Data.Type              Year       Total.Catch    
##  Commercial : 0   Length:12          Min.   :1998   Min.   : 5.822  
##  Sport      :12   Class :character   1st Qu.:2004   1st Qu.:12.568  
##  Subsistence: 0   Mode  :character   Median :2009   Median :16.163  
##                                      Mean   :2009   Mean   :14.563  
##                                      3rd Qu.:2014   3rd Qu.:17.070  
##                                      Max.   :2020   Max.   :20.790  
##  Overall.Total.Catch
##  Min.   :21.45      
##  1st Qu.:23.50      
##  Median :26.67      
##  Mean   :27.92      
##  3rd Qu.:31.28      
##  Max.   :40.15
      CN.catch.plot2 <- ggplot(can.catch.cn2) +
                              geom_line(aes(x = Year, y = Total.Catch, color = Area)) +
                                   labs(x = "Year", y = "Total Catch (0000's of fish") +
                                   theme_bw()
      CN.catch.plot2

can.catch.sk <- can.catch %>% filter(Species   == "Sockeye")

colnames
## function (x, do.NULL = TRUE, prefix = "col") 
## {
##     if (is.data.frame(x) && do.NULL) 
##         return(names(x))
##     dn <- dimnames(x)
##     if (!is.null(dn[[2L]])) 
##         dn[[2L]]
##     else {
##         nc <- NCOL(x)
##         if (do.NULL) 
##             NULL
##         else if (nc > 0L) 
##             paste0(prefix, seq_len(nc))
##         else character()
##     }
## }
## <bytecode: 0x0000020277d6ba00>
## <environment: namespace:base>
summary(can.catch.cn2)
##    Country           Prov.State                 Area       Species  
##  Length:12          Length:12          North Coast:12   Chinook:12  
##  Class :character   Class :character   Southeast  : 0               
##  Mode  :character   Mode  :character                                
##                                                                     
##                                                                     
##                                                                     
##        Catch.Type  Data.Type              Year       Total.Catch    
##  Commercial : 0   Length:12          Min.   :1998   Min.   : 5.822  
##  Sport      :12   Class :character   1st Qu.:2004   1st Qu.:12.568  
##  Subsistence: 0   Mode  :character   Median :2009   Median :16.163  
##                                      Mean   :2009   Mean   :14.563  
##                                      3rd Qu.:2014   3rd Qu.:17.070  
##                                      Max.   :2020   Max.   :20.790  
##  Overall.Total.Catch
##  Min.   :21.45      
##  1st Qu.:23.50      
##  Median :26.67      
##  Mean   :27.92      
##  3rd Qu.:31.28      
##  Max.   :40.15
CN.catch.plot

sk.catch.plot <- ggplot(can.catch.sk) +
                        geom_line(aes(x = Year, y = Total.Catch, color = Species, linetype = Catch.Type))
sk.catch.plot

###Notes Plot peak flows 4 to 5 years previous (e.g. impact of peak flows on recruitment). - Assume mortality at >200 cms - spawning habitat lost at 300-400 cms - Is Quinsam flow regulated? Ask Mary.

Is return age genetic? Or environmental?

Supplemental Tables and Figures

Table 1. Size at age of male and female Chinook Salmon captured in Campbell River watershed
Waterbody Sex Age n % of Total
(by Sex)
% of Total
(by Stream)
Size Range
(mm)
Mean Lenght
(mm)
Std. Error
Campbell River F 3 0 0.00 0.00 500 - 699 595 20.82
Campbell River M 3 6 0.19 0.08 500 - 699 595 20.82
Campbell River F 4 21 0.48 0.28 700 - 899 783 10.69
Campbell River M 4 13 0.41 0.17 550 - 949 776 23.30
Campbell River F 5 23 0.52 0.30 750 - 949 839 7.51
Campbell River M 5 12 0.38 0.16 700 - 949 846 14.43
Campbell River F 6 0 0.00 0.00 900 - 949 930 0.00
Campbell River M 6 1 0.03 0.01 900 - 949 930 0.00
Quinsam Hatchery F 3 9 0.04 0.02 550 - 749 644 15.33
Quinsam Hatchery M 3 67 0.38 0.18 400 - 749 595 6.84
Quinsam Hatchery F 4 130 0.65 0.35 600 - 899 742 3.77
Quinsam Hatchery M 4 95 0.54 0.25 550 - 899 745 5.64
Quinsam Hatchery F 5 61 0.30 0.16 700 - 949 823 5.76
Quinsam Hatchery M 5 12 0.07 0.03 750 - 949 845 13.57
Quinsam Hatchery F 6 1 0.00 0.00 800 - 849 812 0.00
Quinsam Hatchery M 6 1 0.01 0.00 750 - 799 756 0.00
Quinsam River F 3 1 0.01 0.00 700 - 749 700 0.00
Quinsam River M 3 45 0.41 0.22 500 - 849 626 12.07
Quinsam River F 4 58 0.63 0.29 650 - 849 744 4.73
Quinsam River M 4 56 0.51 0.28 550 - 949 723 9.35
Quinsam River F 5 31 0.34 0.15 700 - 949 830 7.54
Quinsam River M 5 9 0.08 0.04 700 - 949 806 21.00
Quinsam River F 6 2 0.02 0.01 800 - 849 838 2.83
Quinsam River M 6 0 0.00 0.00 800 - 849 838 2.83